package com.chuhe.starry.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.chuhe.common.domain.dto.MessageSendDto;
import com.chuhe.common.domain.dto.TokenUserInfoDto;
import com.chuhe.common.domain.entity.ChatMessage;
import org.springframework.web.multipart.MultipartFile;

import java.io.File;

/**
 * <p>
 * 聊天消息表 服务类
 * </p>
 *
 * @author 张楚河
 * @since 2025-05-21
 */
public interface ChatMessageService {
    /**
     * 发送消息
     * @Author: 楚河
     * @Date: 2025-05-24 13:10
     */
    MessageSendDto saveMessage(ChatMessage chatMessage, TokenUserInfoDto tokenUserInfoDto);
    /**
     * 保存文件
     * @Author: 楚河
     * @Date: 2025-05-24 16:44
     */
    void saveMessageFile(String userId, Long messageId, MultipartFile file, MultipartFile cover);
    /**
     * 下载文件
     * @Author: 楚河
     * @Date: 2025-05-24 17:00
     */
    File downloadFile(TokenUserInfoDto userInfoDto, Long messageId, Boolean cover);
}
